package com.sdy.resdir.biz.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sdy.common.model.BizException;
import com.sdy.resdir.biz.model.RdIpUpdateApplication;
import com.sdy.mvc.service.BaseService;
import com.sdy.resdir.biz.vo.IpApplyInfoVo;
import com.sdy.resdir.biz.vo.IpApplyListVo;

import java.util.List;

/**
 * <p>
 * ip修改申请 服务类
 * </p>
 *
 * @author hyh
 * @since 2019-10-28
 */
public interface RdIpUpdateApplicationService extends BaseService<RdIpUpdateApplication> {


    /**
     * 用户获取ip修改申请列表
     *
     * @param page
     * @param appName
     * @param ip
     * @param state
     * @param userId
     * @return
     */
    IPage<IpApplyListVo> getUserIpOrderList(Page page, String appName, String ip, Integer state, Integer userId);

    /**
     * 管理员查看ip修改审核列表
     *
     * @param page
     * @param appName
     * @param ip
     * @param state
     * @param userId
     * @return
     */
    IPage<IpApplyListVo> getManagerIpOrderList(Page page,String appName, String ip, Integer state,Integer userId);


    /**
     * 获取ip修改申请单详细信息
     *
     * @param userId
     * @param applyId
     * @return
     * @throws BizException
     */
    IpApplyInfoVo getIpApplyInfo(Integer userId,Integer applyId) throws BizException;


    /**
     * ip修改申请单审核按钮
     *
     * @param userId
     * @param result
     * @param remark
     * @param ipApplyNo
     * @return
     */
    int ipOrderApproval(Integer userId, Integer result, String remark, String ipApplyNo) throws Exception;

}
